The need and the ability of conventional systems, methods, and computer programs to update core software programs easily with different software components have become increasingly important for a variety of reasons. For instance, there are an increasing number of new and upgraded connection types available to consumers for use with core software programs. For the consumer, these new and upgraded connection types may enhance connectivity between their computer and a host system. For instance, a new or upgraded connection type may involve use of a new or upgraded hardware communication device, such as an upgrade from a low-bandwidth connection type (e.g., an analog dial-up modem) to a broadband connection type (e.g., a cable modem). Yet, consumers who are not skilled enough to manually upgrade core software programs to communicate with new or upgraded connection types may not be able to take advantage of the existence of the new or upgraded connection device.